

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script type="text/javascript" src="helpman_topicinit.js"></script>

<title>Global Element and ComplexType [Enterprise Architect User Guide]</title>

<meta name="keywords" content="Enterprise Architect, Sparx Systems, UML, Global Element,Global Element Import XSD,XSD,XSD Import, Global Element Behaviour">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<link type="text/css" href="default.css" rel="stylesheet" />
<style type="text/css">
  A, A:Visited
  {
    color: #00F;
  }

  A:Active, A:Hover
  {
    color: #F00;
  }

  OL
  {
    margin: 5px 0 5px 48px;
  }

  UL
  {
    margin-bottom: 3px;
    margin-top: 0;
  }

  #nsr
  {
    background-color: #D4DFFF;
  }

  #nsr A
  {
    text-decoration: none;
  }

  #mainbody
  {
    padding: 8px;
  }

  .p_BodyText
  {
    padding: 5px 0;
  }
</style>



<style type="text/css" media="screen">
  BODY
  {
    background-color: #FFFFFF;
  }

  #nsr
  {
    padding: 6px 6px 0 6px;
    border-bottom: none;
    vertical-align: top;
    z-index: 2;
    visibility: visible;
    left: 0;
    top: 0;
    position: absolute;
  }

  #mainbody
  {
    left: 0;
    top: 0;
    margin: 0;
    position: absolute;
    padding: 10px;
    overflow: auto;
    height: 100%;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-attachment: fixed;
  }
</style>

<style type="text/css" media="print">
  #nsr
  {
    visibility: none;
  }

  #mainbody
  {
    overflow: visible;
  }
</style>
<script type="text/javascript" language="JavaScript" src="nonscroll.js"></script>

</head>
<body scroll="no">

<div id="page">



        <div id="content">
          <div id="content-inner">
          



  
          <div id="nsr">
            <table border="0" cellspacing="0" cellpadding="4" width="100%">
              <tr valign="top">
                <td align="left">
  


                  <p class="p_Heading1"><span class="f_Heading1">Global Element and ComplexType</span></p>



  
                </td>
                <td align="right">
                  <a href="introduction.htm" onmouseover="document.images.main.src='button_main_h.gif'" onmouseout="document.images.main.src='button_main.gif'">
                    <img name="main" src="button_main.gif" border=0 alt="Return to Introduction">
                  </a>&nbsp;
    
                  <a href="import_xsd.htm" onmouseover="document.images.prev.src='button_prev_h.gif'" onmouseout="document.images.prev.src='button_prev.gif'">
                    <img name=prev src="button_prev.gif" border=0 alt="Previous page" />
                  </a>&nbsp;
    
    
    
                  <a href="web_services_wsdl.htm" onmouseover="document.images.next.src='button_next_h.gif'" onmouseout="document.images.next.src='button_next.gif'">
                    <img name=next src="button_next.gif" border=0 alt="Next page" />
                  </a>
    
    
                </td>
              </tr>
            </table>
          </div>
          <div id="mainbody">
  


                <p class="p_BodyText"><span class="f_BodyText">Some XML Schemas have </span><span class="f_BodyText" style="font-style: italic;">ComplexType</span><span class="f_BodyText"> elements with the same name as the referring global elements, but with the suffix </span><span class="f_BodyText" style="font-style: italic;">Type</span><span class="f_BodyText"> as shown below:</span></p>
<p class="p_Code"><span class="f_Code">&lt;xs:element name=&quot;Address&quot; type=&quot;</span><span class="f_Code" style="color: #ff0000;">AddressType</span><span class="f_Code">&quot;/&gt;</span></p>
<p class="p_Code"><span class="f_Code">&lt;xs:complexType name=&quot;</span><span class="f_Code" style="color: #ff0000;">AddressType</span><span class="f_Code">&quot;&gt;</span></p>
<p class="p_Code"> &nbsp; &nbsp; &nbsp; &nbsp;<span class="f_Code"> &nbsp;&nbsp; &lt;xs:sequence/&gt;</span></p>
<p class="p_Code"><span class="f_Code">&lt;/xs:complexType&gt;</span></p>
<p class="p_BodyText"><span class="f_BodyText">On XSD import, Enterprise Architect treats this global element and its bounding ComplexType as a single entity and creates a single </span><span class="f_BodyText" style="font-style: italic;">XSDcomplexType</span><span class="f_BodyText"> stereotyped Class with the same name as the global element as shown below:</span></p>
<p class="p_TextIndentedL2"><img src="no_global_import.png" width="141" height="98" border="0" alt="No_Global_Import"></p>
<p class="p_BodyText"><span class="f_BodyText">You can change this default behaviour by selecting the </span><span class="f_BodyText" style="font-weight: bold;">Import global elements with &quot;Type&quot; postfix</span><span class="f_BodyText"> checkbox. When you select this option, Enterprise Architect treats the global element and the ComplexType it is referring to as two separate entities. So, for the above example, Enterprise Architect creates an </span><span class="f_BodyText" style="font-style: italic;">XSDtopLevelElement</span><span class="f_BodyText"> stereotyped Class for the global element and an </span><span class="f_BodyText" style="font-style: italic;">XSDcomplexType</span><span class="f_BodyText"> stereotyped Class for the ComplexType, and connects them as follows:</span></p>
<p class="p_TextIndentedL2"><img src="global_import.png" width="171" height="222" border="0" alt="Global_Import"></p>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="952" bgcolor="#efeff7" style="width:952px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="952" bgcolor="#f7f7ff" style="width:952px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">Enterprise Architect treats the following as two separate entities irrespective of whether the </span><span class="f_MenuKeyField">Import global elements with &quot;Type&quot; postfix</span><span class="f_TiporNoteText"> checkbox is selected or unselected:</span></p>
<p class="p_Code"><span class="f_Code">&lt;xs:element name=&quot;HomeAddress&quot; type=&quot;AddressType&quot;/&gt;</span></p>
<p class="p_Code"><span class="f_Code">&lt;xs:complexType name=&quot;AddressType&quot;&gt;</span></p>
<p class="p_Code"> &nbsp; &nbsp; &nbsp; &nbsp;<span class="f_Code"> &nbsp;&nbsp; &lt;xs:sequence/&gt;</span></p>
<p class="p_Code"><span class="f_Code">&lt;/xs:complexType&gt;</span></p>
</td>
</tr>
</table>
</div>




            </div>
          </div>
        </div>



</div>


</body>
</html>
